package learn.up.java.db.nosql.redis;

/**Redis持久化
 * 为了保证redis数据在redis服务器关机重启的情况下依然不会丢失，
 * 需要对redis里面的数据做持久化处理，有两种方式
 * 1.RDB方式(默认使用的方式):在指定的时间间隔内把数据快照写入到磁盘一次
 * 2.AOF方式:以日志的形式记录服务器的每一步操作，在redis服务器启动的时候会读取
 *    该文件，来重新构建数据库，保证启动后数据是完整的
 * 3.RDB和AOF同时使用
 * 4.无持久化:以配置形式
 * @author Administrator
 *
 */
public class RedisPersistence {
	
	/**
	 * RDB方式：
	 * 优势
	 * 1.定期文件备份，出现故障容易恢复
	 * 2.性能最大化，在redis启动的时候，服务器会创建其他来
	 * 进程专门处理这些数据的持久化，避免服务器进程花费大量时间
	 * 执行IO操作  
	 * 劣势
	 * 1.保证数据高可用性方面不够,可能还没有到第二次备份时间，
	 * 服务器出现死机，那上一次备份之后到死机期间产生的数据会丢失
	 * 2.由于RDB是采用子进程来处理持久化工作，如果数据量过大的时候，
	 * 可能拖慢系统响应速度
	 * 配置:查看redis.conf配置
	 * 
	 * AOF方式
	 * 优势
	 * 1.保证数据的安全性
	 * 2.对日志操作的模式是append，保证数据一致性
	 * 3.如果数据量过大，会重新产生新文件
	 * 劣势
	 * 1.对相同数量级的文件，
	 * 2.运行效率更低一些，每一次修改都会写入到日志
	 */

}
